第一天 : 安裝Anaconda
第二天 : 安裝Jupyter notebook
本次Python30天分為幾個部分
因為作者本身也是第一次學習Python和寫程式文章,所以編排上會有點亂,觀念可能也會錯誤,如果有疑問可以提出一起討論,等30天完成之後有其他時間會將之前寫的文章加入一些想法。
這篇文章的程式輸出結果會在程式下方顯示一樣也是用程式碼區塊的方式顯示。會再加上輸出結果。
示範的程式碼放在github上面,接下來正式進入第三天課程
介紹python一些簡單的語法,不同於其他的語法(ex Java、C..)需要對變數做明確的宣告型別,Python宣告變數不用特別宣告型別。
宣告變數
python變數不須宣告就可以使用。例如以下程式(在Javascript中需要使用 let, const)。
在Python中使用「#」當註解符號
fruit = "香蕉" #fruit 的資料型態為字串
同一列指定多個變數,變數之間用「,」分隔
age, animal = 18, "兔子" #age的值為18, animal的值為 "兔子"
刪除變數
del fruit
命名規則
1.不可以取保留字
2.變數名稱第一個字母必須是大小寫字母、_、中文(pytho3.x支援)
3.只能由大小寫字母、數字、 _ 、 中文(pytho3.x支援)組成變數名稱
4.英文字母大小寫視為不同的變數名稱
python最簡單的資料型別
1.數值(有分整數和浮點數)
2.布林(Ture,False)
3.字串(文字字元)
以下示範這些資料型態如何宣告
num1 = 34 #整數
num2 = 67.83 #浮點數
num3 = 1.0e8 #代表1乘以10的8次方
flag1 = True #bool型態 T為大寫
flag2 = False #bool型態 F為大寫
str1 = "這是字串" #可使用跳脫字元「\」來包含特殊字元
跳脫字元介紹
跳脫字元
print的語法
print(項目1[,項目2, ...., sep="分隔字元", end="結束字元"])
以下示範print多個數字並且使用分隔字元和結束字元
print(100, 200, 300, sep="&", end="--")
# 輸出結果
100&200&300--
格式化print
print命令支援參數格式化功能,%s
代表字串、%d
代表數字、%f
代表浮點數
print("%s 總冠軍" % ("兄弟象"))
print("最終的比數為 %d:%d" % (2,7))
print("%s 贏的機率為 %8.2f%s " % ("兄弟象",99.9,"%")) #(8代表固定輸出8個字元(含小數點))
# 輸出結果
兄弟象 總冠軍
最終的比數為 2:7
兄弟象 贏的機率為 99.90%
print也支援字串format方法列印字串和整數
print("{}{}年的參加隊伍為{}".format("鐵人賽",2018,"浪流連九程式匠自然產生的佛系碼農專區"))
# 輸出結果
鐵人賽2018年的參加隊伍為浪流連九程式匠自然產生的佛系碼農專區
type命令會取得物件的資料型態
print(type(2018))
print(type("浪流連九程式匠自然產生的佛系碼農專區"))
print(type(True))
# 輸出結果
<class 'int'>
<class 'str'>
<class 'bool'>
input 命令
input 是讓使用者由鍵盤輸入資料,print是輸出資料
winner = input("請輸入2018中華職棒總冠軍?")
# 輸出結果
請輸入2018中華職棒總冠軍?
num2 = 5 + True #True 轉換為1
num3 = 5 + False #False 轉換為0
print('num2---->',num2)
print('num3---->',num3)
# 輸出結果
num2----> 6
num3----> 5
Python有以下基礎的運算子
算術運算子
+, -, *, /, %, //(取得整除的商數), ** (次方, 7**2 = 49)
關係運算子
==, !=, >, <, >=, <=
邏輯運算子
not, and, or
複合指定運算子
+=, -=, *=, /=, %=, //=, **=
判斷式
python 語言以冒號「:」以及縮排來表示程式區塊
winner = input("請輸入2018鐵人賽參加隊伍是否有「浪流連九程式匠自然產生的佛系碼農專區」,請輸入是Yes or No?")
if(winner=="Yes"):
print("恭喜你答對了!!")
else:
print("不好意思你答錯了~><~")
# 輸出結果
請輸入2018鐵人賽參加隊伍是否有「浪流連九程式匠自然產生的佛系碼農專區」,請輸入是Yes or No?Yes
恭喜你答對了!!
巢狀判斷式
score = int(input("請「浪流連九程式匠自然產生的佛系碼農專區」有幾人參加?"))
if(score>=3):
if(score==9):
print("沒錯!!剛好就是9人")
elif(score>=7):
print("已經非常接近了")
else:
print("不好意思,離正確答案還有一段距離")
else:
print("沒有這麼少人喔")
版主您好,我有問題想要請教
第一張圖片的部分,未輸入回答前已跑出NO的答案
及
第二章圖片的部分,輸入了YES卻未得到回應
請問哪邊需要修正嗎?
謝謝
設定"Yes"要輸入Yes就可答對,不是yes、YES